#ifndef _DUDE_CONTROLLER_H_
#define _DUDE_CONTROLLER_H_

#include <vector>

class Dude;

//Virtual base class as an interface for Dude to use and BattleScene to implement
class DudeController
{
public:
	virtual bool AtFront(Dude *dude) = 0; //am I the front of my row right now?
	virtual Dude* GetEnemy(Dude *dude) = 0; //Get enemy if any of this dude
	virtual Dude* GetNextDude(Dude *dude) = 0; //Get dude in front of this dude
	virtual double GetMiddleBoundary() = 0; //Get the X of the middle boundary
	virtual bool TryMoveSideways(Dude *dude) = 0; //try to move up or down, return success
};

#endif